home *** CD-ROM | disk | FTP | other *** search
/ Internet Warrior 1993 July / Internet Warrior No. 1 July 1993 - Austin Code Works.ISO / apps / pcgopher / readme < prev    next >
Encoding:
Text File  |  1993-04-11  |  6.9 KB  |  150 lines

  1. Gofer version 2.28                                Fri Feb 12 00:00:00 EST 1993
  2. ------------------------------------------------------------------------------
  3. This directory contains the source code, documentation and demonstrations for
  4. Gofer version 2.28, an interactive functional programming environment (i.e. an
  5. interpreter!) supporting a language based on the Haskell report version 1.2
  6. (recently published in ACM Sigplan notices).
  7.  
  8. The following features are included in Gofer 2.28:
  9.  
  10.   o  Lazy evaluation, higher order functions, pattern matching etc...
  11.  
  12.   o  Wide range of built-in types with provision for defining new free
  13.      datatypes and type synonyms.
  14.  
  15.   o  Polymorphic type system with provision for overloading based on
  16.      a system of type classes.
  17.  
  18.   o  Full Haskell 1.2 expression and pattern syntax including lambda,
  19.      case, conditional and let expressions, list comprehensions, operator
  20.      sections, and wildcard, as and irrefutable patterns.
  21.  
  22.   o  Partial implementation of Haskell 1.2 facilities for I/O, enabling
  23.      the use of simple interactive programs and programs reading and writing
  24.      text files.
  25.  
  26.   o  User documentation, sample programs and source code freely available.
  27.  
  28.   o  Supports constructor classes and overloaded monad comprehensions.
  29.  
  30.   o  Simple minded compiler/translator Gofer -> C with runtime system for
  31.      generation of standalone applications.
  32.  
  33.   o  Runs (and originally developed) on PC compatible computers, but
  34.      also works on Sun workstations.  Code should be portable to many
  35.      other kinds of machine.
  36.  
  37. Gofer is intended as an experimental language, particularly where type classes
  38. are involved.  Gofer extends the Haskell type class system in several ways:
  39.  
  40.   o  Type classes with multiple parameters are supported.
  41.  
  42.   o  Instances of type classes may be defined non-overlapping, but otherwise
  43.      arbitrary types.
  44.  
  45.   o  Predicates in contexts may involve arbitrary type expressions, not just
  46.      type variables as in Haskell.
  47.  
  48.   o  Basic approach to dictionary construction is different, based on the
  49.      approach I described in a posting to the Haskell mailing list early in
  50.      Feburary 1991.  The resulting system ensures that all dictionaries are
  51.      constructed before evaluation begins, avoiding repeated construction
  52.      and enabling the shared evaluation of overloaded constants in
  53.      dictionaries.
  54.  
  55. The most significant features of Haskell not currently supported are:
  56. modules, arrays, overloaded numeric constants, default declarations, derived
  57. instances, contexts in datatype definitions.
  58. ------------------------------------------------------------------------------
  59.  
  60. This directory contains the following files:
  61.  
  62.  README           This file -- you're already reading it!
  63.  
  64.  gofer2.28.tar.Z  Source code for Gofer system.  You will need this (and a
  65.                   C compiler) to produce a version of Gofer to run on your
  66.                   machine.
  67.  
  68.  preludes.tar.Z   A small collection of prelude files for use with
  69.                   Gofer 2.28.
  70.  
  71.  demos.tar.Z      Demonstration programs.
  72.  
  73.  docs.tar.Z       Documentation for the Gofer system.  ASCII formatted
  74.                   text including main user guide and release notes for
  75.                   versions 2.21 and 2.28.  Also include Jeroen Fokker's
  76.                   LaTeX version of the original Gofer manual.
  77.  
  78.                   Please get a copy of this file and read (at least) the
  79.                   file release.228...
  80.  
  81.  docsrc.tar.Z     Source for the ASCII version of the Gofer documentation.
  82.                   Most users will not need this, but it is provided here
  83.                   for the benefit of anyone that wants to prepare an
  84.                   ASCII version for printing with a different page size.
  85.                   Note that you will need a copy of docs.tar.Z even if
  86.                   you also take a copy of this file; not all parts of the
  87.                   documentation are included in docsrc.tar.Z.
  88.  
  89. The following files will only be of interest to PC (i.e. DOS) users:
  90.  
  91.  readme.pc        A copy of the readme file in pcgof228.zip.
  92.  
  93.  pcgof228.zip     A binary version of Gofer 2.28 for use on standard PCs.
  94.                   All the demonstration programs and preludes are included
  95.                   in this file, so you won't need to fetch them separately.
  96.                   This file contains everything you need to use Gofer on a
  97.                   PC -- no C compiler is necessary.  Please ensure that you
  98.                   have read and understood the README.PC file included with
  99.                   this ZIP archive before using these programs.
  100.  
  101.  386gofer.zip     Executable and additional source for a 386 version of
  102.                   Gofer 2.28, compiled with DJGPP (GNU C for DOS).  If you
  103.                   have a 386 or better PC, get this; it gives you the
  104.                   chance to have a much bigger heap, faster execution and
  105.                   32 bit integers.
  106.  
  107.  calvin21.zip     A small vi-like editor; my recommendation for use with
  108.                   Gofer on an MSDOS PC.
  109.  
  110.  unz50p1.exe      The INFO-ZIP unzip utility in binary form.  You will need
  111.                   this to unpack the .zip files above.  Just run the program
  112.                   in an empty directory; it is a self extracting archive.
  113.                   Make sure that you don't confuse the INFO-ZIP readme
  114.                   with the Gofer readmes!
  115.  
  116.  pcgof223.zip     Executable and demonstration programs for the PC
  117.                   version of Gofer 2.23.  This is provided just in case
  118.                   anyone wants to use Gofer on an old PC without enough
  119.                   memory to support 2.28.  If you haven't got enough for
  120.                   2.28 then you probably can't run 2.23 either.  But just
  121.                   in case ...
  122.  
  123. Files ending with .tar.Z should be unpacked (on a Unix machine) by creating
  124. and changing to a new directory and typing:
  125.  
  126.                        zcat FILE.tar.Z | tar xvf -
  127.  
  128. where FILE.tar.Z is the appropriate file name.  Files ending in just .Z
  129. should be unpacked using the uncompress utility:
  130.  
  131.                        uncompress -v FILE.Z
  132.  
  133. Don't forget that any files with names ending in ".Z", ".zip" or ".exe"
  134. should be tranfered in binary mode.
  135.  
  136. ------------------------------------------------------------------------------
  137.  
  138. Please do not hesitate to contact me if you have any problems with the files
  139. in this directory, or questions, comments or suggestions about Gofer.
  140.  
  141. I hope that you will enjoy using Gofer!
  142.  
  143. Mark                                                    jones-mark@cs.yale.edu
  144.  
  145. ------------------------------------------------------------------------------
  146. Disclaimer: Gofer is supplied "as is" without express or implied warranty
  147. and is subject to terms and conditions of use as set out in the documentation
  148. and source code.
  149. ------------------------------------------------------------------------------
  150.